#define _CRT_SECURE_NO_WARNINGS  1
//#include <stdio.h>
//int main()
//{
//	int i = 1;
//	int ret = (++i) + (++i) + (++i);
//	printf("%d\n", ret);
//	printf("%d\n", i);
//	return 0;
//}

//#include <stdio.h>
//int i;
//int main()
//{
//    i--;
//    if (i > sizeof(i))
//    {
//        printf(">\n");
//    }
//    else
//    {
//        printf("<\n");
//    }
//    return 0;
//}

//#include <stdio.h>
//
//int main()
//{
//    int i = 0;
//    int j = 0;
//    for (i = 10000; i < 100000; i++)
//    {
//        int sum = 0;
//        for (j = 10; j <= 10000; j *= 10)
//        {
//            sum += (i / j) * (i % j);
//        }
//        if (sum == i)
//            printf("%d ", i);
//    }
//    return 0;
//}

//#include <stdio.h>
//
//int main()
//{
//    int year = 0;
//    int month = 0;
//    while (~scanf("%d %d", &year, &month))
//    {
//        int day[] = { 31,28,31,30,31,30,31,31,30,31,30,31 };
//        if (((year % 4 == 0) && (year % 100 != 0)) || (year % 400 == 0))
//        {
//            day[1] += 1;
//        }
//        printf("%d\n", day[month - 1]);
//    }
//    return 0;
//}

#include <stdio.h>

int main()
{
    int n = 0;
    int m = 0;
    scanf("%d %d", &n, &m);
    int arr[2000] = { 0 };
    for (int i = 0; i < n + m; i++)
    {
        scanf("%d", &arr[i]);
    }
    for (int i = 0; i < n + m - 1; i++)
    {
        for (int j = 0; j < n + m - i; j++)
        {
            if (arr[j] > arr[j + 1])
            {
                int tmp = arr[j];
                arr[j] = arr[j + 1];
                arr[j + 1] = tmp;
            }
        }
    }
    for (int i = 0; i < n + m; i++)
    {
        printf("%d ", arr[i]);
    }
    return 0;
}